home *** CD-ROM | disk | FTP | other *** search
Text File | 2006-08-13 | 41.1 KB | 1,028 lines |
- AutoIt Changelog
- ================
-
- 3.2.0.1 (13th August, 2006) (Release)
-
- - Fixed: (AU3INFO) Buffer overrun in control code.
- - Fixed: Exe2Aut.exe was missing its digital signature.
-
-
-
- 3.2.0 (12th August, 2006) (Release)
-
- - Added: COM object support.
- - Added: Aut2Exe can now created .a3x encoded files (similar to .zip for .au3).
- - Added: Support for custom tray icons.
- - Added: "default" keyword.
- - Added: IsKeyword() so "default" keyword can be used as parameter in a user function call.
- - Added: Boolean support and keywords of 'false' and 'true'.
- - Added: IsBool()
- - Added: +=, -=, *=, /= operators.
- - Added: DLLCall() cdecl and stdcall support.
- - Added: DLLStruct... functions.
- - Added: Limited TCP and UDP functions.
- - Added: Added support for reading and writing stdio.
- - Added: ConsoleRead(), ConsoleWriteError().
- - Added: Ability to initialize arrays in DIM and CONST keywords.
- - Added: Switch, EndSwitch structure.
- - Added: HWnd() and IsHWnd() functions.
- - Added: BinaryString(), IsBinaryString() functions.
- - Added: FileCreateNTFSLink().
- - Added: /AutoIt3ExecuteScript command line option.
- - Added: Call() now supports parameters.
- - Added: Execute()
- - Added: @HotKeyPressed macro.
- - Added: Unary NOT operations on strings are now allowed. A NOT operation on a non-empty string will result in FALSE.
- - Added: Beep() and WinFlash() functions.
- - Added: Floor() and Ceiling() functions.
- - Added: SetError can optionally set @extended.
- - Added: RegRead, RegEnumVal return the type of the value in @extended.
- - Added: FileSaveDialog(), FileOpenDialog() supports multiple filter groups.
- - Added: @ScriptLineNumber, @ProcessorArch, @AutoItPID.
- - Added: BitRotate().
- - Added: Fileopen(), FileCopy(), FileMove() additional flags to create non existent subfolders.
- - Added: FileRead(), FileWrite() work with binary files.
- - Added: (GUI) GUICtrlSetData text for treeview.
- - Added: (GUI) $WS_EX_MDICHILD support for GUICreate().
- - Added: (GUI) GUICtrlCreateGraphic(), GUICtrlSetGraphic().
- - Added: (GUI) Opt('GUIEventOptions',1) to suppress window action when clicking on Minimize,restore or Maximize buttons.
- - Added: (GUI) Right-click support for List/Treeview GUI control.
- - Added: (GUI) GuiCtrlRead return ControlID if Opt("GUIEventCompatibilityMode',2).
- - Added: (GUI) GUICtrlCreateMonthCal().
- - Added: (GUI) Opt("GUIDataSeparatorChar",...).
- - Added: (GUI) GUICtrlCreateObj().
- - Added: (GUI) GUICtrlSetColor(), GUICtrlSetBkColor(), GUICtrlSetImage() for ListviewItem controls.
- - Added: (GUI) GuiSwitch tabitemID optional parameter to allow dynamic control creation on a tabitem.
- - Added: (GUI) GuiCtrlListView support Icon view.
- - Added: (GUI) $GUI_WS_EX_PARENTDRAG Allow the label or pic control to be used as the title bar to drag the whole the parent window.
- - Added: (GUI) GUICtrlGetHandle().
- - Added: (GUI) $GUI_EVENT_DROPPED @GUI_DRAGID,@GUI_DROPID.
- - Added: (GUI) GuiSetCursor(16),GuiCtrlSetCursor(16) hide the cursor.
- - Added: (GUI) Allow Dragfile to any control. @GUI_DRAGFILE contain the filename to be used in the $GUI_EVENT_DROPPED.
- - Added: (GUI) GUIRegisterMsg() to work with GUI WM_Message-routines at runtime.
- - Added: (GUI) GUICtrlRegisterListViewSort() to create a real sorting routine for GUI ListView's.
- - Added: (GUI) Icons for tab items.
- - Added: (AU3INFO) AutoIt Windows Info : Now shows Style and exStyle values for the controls.
-
- - Changed: #include search algorithm modified.
- - Changed: The /c command line option has been replaced by /AutoIt3ExecuteLine.
- - Changed: RegEnumKey and RegEnumVal return more precise @error to help diagnostic.
- - Changed: Return,@error, @extended have to be explicit to be return by an UDF.
- - Changed: FileFindFirstFile no longer returns "." or "..".
- - Changed: Set _ to be a continuation character ONLY after whitespace.
- - Changed: FileClose with an invalid handle no longer triggers an AutoIt runtime error.
- - Changed: Fatal error message is now displayed if DLLCall cannot be executed.
- - Changed: The default setting on Au3info was changed so that it doesn't highlight controls.
- - Changed: RegEnumKey and RegEnumVal return more precise @error values to help diagnostics.
- - Changed: "OnAutoItExit" function is now called on system shutdown or user logoff.
- - Changed: Opt() with just the "option" will now return the current value for that option.
- - Changed: DllCall @error is set when function not found.
- - Changed: SplashTextOn() opt=32 to center vertically.
- - Changed: (GUI) GUICtrlCreateList now forces the style LBS_NOTIFY.
- - Changed: (GUI) GUICtrlCreateIcon default size is 32x32.
-
- - Fixed: ContinueCase to keywords allowed after IF.
- - Fixed: Mouse... invalid button definition. (Thanks vollyman)
- - Fixed: IniDelete() could create an empty file if the file did not exist.
- - Fixed: ToolTip Centering go around.
- - Fixed: Menu/ContextMenu enable/disable.
- - Fixed: Hotkey for filecreateshortcut.
- - Fixed: MemGetStats >2Gb.
- - Fixed: StringInStr return 0 when searching for "".
- - Fixed: RegRead under Windows 2000.
- - Fixed: Bad refresh on double GUICtrlSetPos.
- - Fixed: ControlSend (...,"{CTRLDOWN}b{CTRLUP}).
- - Fixed: ContextMenu position.
- - Fixed: Made sure that declaring a UDF parameter in a Local or Global statement will raise an error.
- - Fixed: File...Dialog browse through links.
- - Fixed: ControlCommand "GetCurrentSelection".
- - Fixed: Mouse... returns.
- - Fixed: MouseClick, MouseUp bad behavior.
- - Fixed: StringReplace("abc","","") returns 1 instead of "".
- - Fixed: WinSetTrans returns error.
- - Fixed: Assign not creating/assigning macro variable.
- - Fixed: Assign respect Opt("MustDeclareVars",1).
- - Fixed: @NumParams destroyed after UDF call.
- - Fixed: MouseClickDelay option. (Fixed by Nutster)
- - Fixed: Redim of array byRef parameter.
- - Fixed: InputBox left,top values when not defined.
- - Fixed: FileFindNextFile return error.
- - Fixed: HWND string concatanation.
- - Fixed: Exit inside UDF.
- - Fixed: SendKeyDelay, SendKeyDownDelay when no shift required.
- - Fixed: FileReadLine with line=0.
- - Fixed: Listview sorting with using styles: $LVS_SORTASCENDING and $LVS_SORTDESCENDING.
- - Fixed: StringLen(integer) returning 0.
- - Fixed: Reg... functions on IA64/X64.
- - Fixed: FileFindFirstFile() leak handles.
- - Fixed: @IpAddress when not network installed.
- - Fixed: FileCopy, FileInstall, DirCopy, FileMove replacing the same file.
- - Fixed: FileClose,FileFindNextFile, FileRead, FileReadLine, FileWrite, FileWriteLine, PluginClose, DllClose return 0 on bad handle.
- - Fixed: FileCopy when creating subdir.
- - Fixed: String... on nonstring parameters.
- - Fixed: Float to Integer precision.
- - Fixed: Bad FatalError after Exit in UDF. Only the first FatalError will be displayed if any before Exit.
- - Fixed: Integer to string conversion.
- - Fixed: StringMid($a,3).
- - Fixed: StringSplit($a,"").
- - Fixed: Refreshing of dispayed tabitem after a tabitem delete.
- - Fixed: StringSplit($a," - ",1) string delimiter.
- - Fixed: Return code from delayed function as WinWait destroyed by Adlib execution.
- - Fixed: FileInstall on same dir.
- - Fixed: Func definition with Byref and default value.
- - Fixed: FileRead returning @error=-1 on empty file.
- - Fixed: INetGetSize, INetGet @error return.
- - Fixed: Run("a.tmp") a.tmp being a compiled script.
- - Fixed: StringSplit("a : b + "," : ").
- - Fixed: #include-once in main script.
- - Fixed: PixelSearch performance.
- - Fixed: HotKeySet("",...) return 0.
- - Fixed: ExpandVarStrings $$, ExpandEnvStrings %%.
- - Fixed: FileInstall in a compiled script whose name is not .exe or .a3x.
- - Fixed: RegRead return right number of fields on REG_MULTI_SZ type.
- - Fixed: FileRead($handle).
- - Fixed: ElseIf ... Then statement not detected.
- - Fixed: Illegal #include with no error message.
- - Fixed: SplashTextOn Memory Leak.
- - Fixed: #include recursion depth enforced.
- - Fixed: @OSVERSION for WIN_XP running under X64 edition.
- - Fixed: Comparison case insensitive accentuated upper case.
- - Fixed: DriveMapDel /DriveMapAdd interaction.
- - Fixed: RegRead MULTI_REG_SZ malformed key.
- - Fixed: For Next with boundary,stepping being a string (no conversion to integer).
- - Fixed: InetGet() could block the foreground execution even when run in background mode.
- - Fixed: WinGetProcess and ProcessExist return same pid precision.
- - Fixed: InetGet("abort") and exiting AutoIt with a download in progres now correctly stop the download immediately.
- - Fixed: @InetGetBytesRead Byte count could be wrong due to a race condition.
- - Fixed: DirCreate not creating subdir on dir with read/hidden/system attributes.
- - Fixed: FileSetAttrib, FileSetTime destroy @workingdir.
- - Fixed: (GUI) GUICtrlSetImage for 16x16 icon not repainting.
- - Fixed: (GUI) The use of $GUI_GR_RECT and $GUI_GR_ELLIPSE under fixed under Win98.
- - Fixed: (GUI) GUI Edit/Input control change notification.
- - Fixed: (GUI) Avoid GuiSwitch when only one remain.
- - Fixed: (GUI) GUI Multiple files drag & drop on edit/input control.
- - Fixed: (GUI) GUI Colors on edit/input control.
- - Fixed: (GUI) GuiCtrlSetImage return 0 on error.
- - Fixed: (GUI) crash Autoit when click on header button of a listview control.
- - Fixed: (GUI) GUICtrlState(@SW_MAXIMIZE or @SW_RESTORE).
- - Fixed: (GUI) GuiCtrlSetStyle ES_READONLY on input/edit control.
- - Fixed: (GUI) GUICtrlCreateTab disapearing.
- - Fixed: (GUI) Resizing of GUI Combo control.
- - Fixed: (GUI) GUICtrlSetData for list or combo not inserting.
- - Fixed: (GUI) GUICtrlSetState for Menu/menuitem.
- - Fixed: (GUI) GUICtrlDelete of a Listview control lead to crash after recreation with more columns.
- - Fixed: (GUI) GUICtrlCreateListViewItem with more field than column.
- - Fixed: (GUI) GUISetFont and Input Control not displayed.
- - Fixed: (GUI) GUICtrlRead return on expanded TreeviewItem.
- - Fixed: (GUI) Windows centering of GUICreate.
- - Fixed: (GUI) GuiCtrlSetPos on Icon control.
- - Fixed: (GUI) GuiGetCursorInfo on tab.
- - Fixed: (GUI) Some flickering in GUICtrlSetImage.
- - Fixed: (GUI) GuiCtrlSetState on non active tab.
- - Fixed: (GUI) TreeviewItem notify when clicking a second time on the same item.
- - Fixed: (GUI) GuiCtrlSetData on inactive tabitem not refreshing active item.
- - Fixed: (GUI) GuiCtrlSetState on control tab.
- - Fixed: (GUI) GuiCtrlSetState disable on hidden control tab.
- - Fixed: (GUI) GuiGetCursorInfo with nonactive GUI.
- - Fixed: (GUI) Bug with accelerator keys (Alt+...) and tabs.
- - Fixed: (GUI) Treeview painting under OS <XP.
- - Fixed: (GUI) GUICtrlSetData with float value.
- - Fixed: (GUI) GuiCtrlSetImage repainting.
- - Fixed: (GUI) Weird behavior when resizing column of listview on a tab.
- - Fixed: (GUI) GuiCtrlSetState($tabitem,$GUI_SHOW) on visible GUI.
- - Fixed: (GUI) GuiGetCursorInfo primary/secondary under nonXP.
- - Fixed: (GUI) GuiCtrlSendMsg, TraySetState doc link.
- - Fixed: (GUI) Crash when deleting an input control.
- - Fixed: (GUI) GuiCtrlCreateCombo and $CBS_DROPDOWNLIST color.
- - Fixed: (GUI) GuiCtrlCreateDate and $DTS_UPDOWN.
- - Fixed: (GUI) GUI click return position.
- - Fixed: (GUI) GuiGetMsg returning on Input control change.
- - Fixed: (GUI) GUICtrlCreateInput/Edit forcing WS_TABSTOP when ES_READONLY.
- - Fixed: (GUI) Resizing of controls dynamically created.
- - Fixed: (GUI) a small flickering bug in CtrlSetImage() for treeview items.
- - Fixed: (GUI) GuiCtrlSetPos, GuiCtrlSetResizing use visible window.
- - Fixed: (GUI) GuiCtrlCreateIcon icon size in multiple icon .ico file.
- - Fixed: (GUI) Pic control size inside a group control.
- - Fixed: (GUI) listview repainting on tab.
- - Fixed: (GUI) Memory overflow in customdraw operations in GUI while scrolling.
- - Fixed: (GUI) Bad GuiCtrlSetResizing when no first show has occured.
- - Fixed: (GUI) bkcolor label on tab if ListViewItem.
- - Fixed: (GUI) $SS_CENTERIMAGE on pic control.
- - Fixed: (GUI) AutoIt Crash when creating a control on a minimized window.
- - Fixed: (GUI) GUICtrlSetImage icon.
- - Fixed: (GUI) Grey coloring of input/edit control when disabled.
- - Fixed: (GUI) Crash after GUICtrldelete of a control having the focus.
- - Fixed: (GUI) UICreate with WS_VISIBLE do an implicit GUISetState().
- - Fixed: (GUI) Background label bad firing when overlayed by an edit control.
- - Fixed: (GUI) GuiCtrlSetData can delete a specific column.
- - Fixed: (GUI) memory leak on GuiDelete($tabitem with icon).
- - Fixed: (GUI) GUI updown control notification if change with keyboard.
- - Fixed: (GUI) GUIGetCursorInfo on listview header.
- - Fixed: (GUI) GUICreate WS_POPUP Centering.
- - Fixed: (GUI) Bad Notification on end of drag when $GUI_DROPACCEPTED not set on a control.
- - Fixed: (GUI) GUISetState(@SW_UNLOCK) force repainting.
- - Fixed: (GUI) GUICtrlSetState $GUI_SHOW on tab with $TCS_BUTTON style.
- - Fixed: (GUI) Bad tabitem creation when no tab defined.
- - Fixed: (GUI) Bad combo disable 16-bit color under W2K.
- - Fixed: (GUI) GUISetBKColor freezing the display.
- - Fixed: (GUI) GUICreate $WS_CHILD+$WS_VISIBLE w=0 or h=0 lead to crash AutoIt.
- - Fixed: (GUI) GuiCtrlCreatePic w=h=0.
- - Fixed: (GUI) GUICtrlRead menuitem checked.
- - Fixed: (GUI) Labels were not painted correctly on tab controls.
- - Fixed: (GUI) GUICtrlSetState(tabitem,@SW_SHOW) under creation bad tabitem display.
- - Fixed: (GUI) GUICtrlSetData on listview/listviewItem bad erasing.
- - Fixed: (GUI) GUICtrlSetImage on a GUI defined with $WS_VISIBLE.
- - Fixed: (GUI) GuiCtrlSetState( ,$GUI_FOCUS) changing tab ordering. Need to create a new state $GUI_ONTOP.
- - Fixed: (GUI) Extra notification on first/default control after GUISetState().
- - Fixed: (GUI) Event notification on {enter} on an edit control.
- - Fixed: (GUI) $GUI_EVENT_MOUSE firing without any mouse movement.
- - Fixed: (GUI) GuiCtrlSetState( ,$GUI_FOCUS) on button repainting.
- - Fixed: (GUI) Drag&Drop of listviewitem onto another listview. $GUI_ACCEPTFILES has been renamed in $GUI_DROPACCEPTED.
- - Fixed: (GUI) TabStop order.
- - Fixed: (GUI) GUICtrlSetPos with a Child window.
-
-
-
- 3.1.1 (7th Apr, 2005) (Release)
-
- - Fixed: @OSVersion did not work for Windows Server 2003
- - Fixed: $LVS_EX_FULLROWSELECT in GuiConstants.au3 was defined $LBS...
- - Fixed: @YDAY was incorrect (one day out)
-
-
-
- 3.1.0 (7th Feb, 2005) (Release)
-
- - Added: GUI creation capabilties
- - Added: DllCall(), DllOpen(), DllClose()
- - Added: ControlListView()
- - Added: WinList()
- - Added: DirGetSize()
- - Added: IniReadSectionNames(), IniReadSection()
- - Added: InetGet(), InetGetSize()
- - Added: HttpSetProxy(), FtpSetProxy()
- - Added: FtpBinaryMode (Option)
- - Added: Ping()
- - Added: ControlGetHandle()
- - Added: WinGetProcess() and ProcessList()
- - Added: SetExtended()
- - Added: WinSetTrans()
- - Added: Assign()
- - Added: ConsoleWrite()
- - Added: @AutoItExe macro
- - Added: Const keyword
- - Added: Optional parameter support for user functions
- - Added: "main", "primary", "menu", "secondary" added as valid mouse button types
- - Added: ExpandVarStrings (Option)
- - Added: The user functions OnAutoItStart() and OnAutoItExit() are called during startup/exit
- - Added: OnExitFunc (Option)
- - Added: (Internal) Native HWND datatype added to variants
-
- - Removed: URLDownloadToFile() (Replaced by InetGet())
-
- - Changed: For loops automatically declare the counter variable as a Local variable
- - Changed: IniDelete() can also delete entire sections
- - Changed: StringReplace() also returns the number of replacements in the @extended macro
- - Changed: StringMid() the "count" parameter is now optional (assumes remainder of the string)
- - Changed: PixelChecksum() now has optional step parameter
- - Changed: Control...() functions now accept the Control ID as an extra way to identify a control
- - Changed: InetGet() function can download in the background
- - Changed: Reg...() functions no longer give a hard error when an unknown key is used.
- - Changed: The mouse and pixel functions now have an additional "client area" mode
- - Changed: Added WIN_2003 to the possible values for @OS_VERSION
- - Changed: AU3Spy.exe renamed to AU3Info.exe
- - Changed: Major upgrades to the AutoIt Window Spy (control highlighting, magnify)
- - Changed: FileSelectFolder supports an initial directory as well as a root directory
- - Changed: File functions no longer give fatal errors when -1 is used as a handle
- - Changed: (Internal) new quicker variable lookup using a binary tree
- - Changed: (Internal) new shared process memory class used for StatusBarGetText()
- - Changed: (Internal) Unified structure stacks (If, Func, Select, While, Do, For)
- - Changed: (Internal) Variant rewrite (now handles int32, int64, double, string, HWND data)
-
- - Fixed: Memory leak in SplashImageOn()
- - Fixed: Expressions like "$var = $var" will now give an error if the variable wasn't previously defined
- - Fixed: StringFormat() with \\ characters
- - Fixed: Under rare situations after closing a script AutoIt3.exe would still appear in task manager for a while
- - Fixed: Certain paths like @WindowsDir were incorrect under Windows Terminal Server
- - Fixed: FileSetTime() systems in non-GMT timezones had incorrect results
- - Fixed: FileMove() with UNC paths (does a real move when in the same dir rather than a copy).
- - Fixed: ^ operator
- - Fixed: Chr()
- - Fixed: StatusBarGetText() failed when used with no "Text" parameter
- - Fixed: InputBox() didn't return focus to the previously active window
-
-
-
- 3.0.102 (4th August, 2004) (Release)
-
- - Major Change: Colors now default to the standard RGB format rather than the previous BGR format.
-
- This affects PixelSearch, PixelGetColor.
-
- The "ColorMode" option has been added to allow old scripts to run with the old BGR mode, just
- place this line at the top of your script to use the old method:
-
- Opt("ColorMode", 1)
-
- - Added: DriveMapAdd(), DriveMapDel() and DriveMapGet()
- - Added: @SW_SHOWDEFAULT, @SW_SHOWMAXIMIZED, @SW_SHOWMINIMIZED, @SW_SHOWMINNOACTIVE,
- @SW_SHOWNA, @SW_SHOWNOACTIVATE, @SW_SHOWNORMAL
- - Added: FileGetShortcut()
- - Added: Predefined $CmdLineRaw variable now holds the original command line in full
- - Added: @DesktopDepth
- - Added: ReDim
- - Added: Command line option /ErrorStdOut
- - Added: More command line params for Aut2Exe.exe: /nodecompile and /comp 0-4 (compression level, 4=best)
- - Added: Process ID (PID) support for Process...() and Run() functions
- - Added: ProcessSetPriority()
- - Added: Decompiler (Exe2Aut) added
- - Added: PixelChecksum()
- - Added: Strings starting with "0x" are converted from hex when used numerically
- - Added: Multi-directory #include <> paths
- - Added: MouseWheel()
- - Added: FileRecycleEmpty()
- - Added: RegEnumKey() and RegEnumVal()
-
- - Changed: TimerStart() renamed to TimerInit(). TimerStop() renamed to TimerDiff()
- - Changed: FileSelectFolder() flag parameter changed
- - Changed: REG_MULTI_SZ values allow double NULL values.
- - Changed: BirOr(), BitAnd() and BitXOR() take up to 255 parameters
- - Changed: Icon and windowstate options added to FileCreateShortcut()
- - Changed: RunAsSet() supports extra profile handling options
- - Changed: RegWrite() now accepts just the keyname in order to create a keyname with no value
- - Changed: "Allow Decompilation" option added to Aut2Exe
- - Changed: Aut2Exe gives feedback during compilation and gives the option to abort
- - Changed: Compiled scripts run/extract much faster when using FileInstall and medium/large files
- - Changed: Max number of user function limits removed
- - Changed: Max number of variable limits removed
- - Changed: -1 does no sleep at all for Send/Mouse delays (SendKeyDelay, etc...)
- - Changed: Optional occurance parameter added to StringInStr()
- - Changed: Optional default filename added to FileOpenDialog() and FileSaveDialog()
- - Changed: Registry functions accept 4 letters keys (HKLM instead of HKEY_LOCAL_MACHINE, etc.)
- - Changed: Remote registry keys are accepted in the form "\\computername\key\subkey"
- - Changed: AutoItSetOption returns the previous setting
- - Changed: (Internal) Built-in function lookups completely rewritten
- - Changed: (Internal) String functions speeded up (concat in astring and variants)
- - Changed: (Internal) ControlSearch modified to include the windowsearch
-
- - Fixed: FileGetSize() works on >2GB files and in-use files
- - Fixed: The expression: If "non-blank" And 1 - now evaluates as true
- - Fixed: /c command line use in compiled scripts
- - Fixed: ToolTip() when the mouse is near the bottom of the screen
- - Fixed: StringIsDigit()
- - Fixed: Process... functions under NT4 unable to see certain processes
- - Fixed: Some keywords incorrectly allowed after a THEN keyword
- - Fixed: (Internal) Hotkey registering logic
-
-
-
- 3.0.101 (11th Mar, 2004) (Release)
- - Added: MemGetStats()
- - Fixed: Compatibility problem under Windows 95a
- - Fixed: Some minor help file typos corrected
-
-
-
- 3.0.100 (29th Feb, 2004) (Release)
- - Added: WinTextMatchMode (Option)
- - Fixed: ExitLoop and ContinueLoop failed during a recursive function
- - Fixed: Sleep(0) (or < 0 ) no longer hangs
- - Fixed: $ with no name was allowed as a variable
- - Fixed: For Loop bug when used in recursion
- - Fixed: FileGetLongName() return value
- - Fixed: @UserProfileDir under 9x
- - Fixed: IsDeclared()
- - Fixed: Random()
-
-
-
- 3.0.94 (21st Feb, 2004) (Beta)
-
- SCRIPT BREAKING CHANGES for FileReadLine and FileWriteLine:
-
- FileWriteLine now automatically writes a DOS @CRLF pair UNLESS the last character of
- the string to write is already @CR or @LF (to make it possible to write non-DOS text files)
-
- FileReadLine will correctly read a DOS, UNIX or MAC line (@CRLF, @LF and @CR terminated respectively).
-
- FileWrite and FileRead added to add further support.
-
- CHANGE YOUR SCRIPTS AS FOLLOWS:
-
- From: FileWriteLine($handle, "line" & @LF)
- To: FileWriteLine($handle, "line" & @CRLF) or FileWriteLine($handle, "line")
-
- From: FileWriteLine($handle, "line")
- To: FileWrite($handle, "line")
-
-
- - Added: FileWrite() and FileRead()
- - Changed: FileReadLine() and FileWriteLine()
- - Added: ToolTip()
- - Added: Eval() and IsDeclared()
- - Added: CaretCoordMode (AutoItSetOption)
- - Added: WinGetCaretPos()
- - Added: WinGetState()
- - Added: MustDeclareVars (AutoItSetOption)
- - Added: Editors page in help
- - Changed: EnvSet()
- - Changed: WinShow() renamed to WinSetState() (With WinShow() as an alias)
- - Fixed: Splash() and moveable flag (and -1 default flag in options)
- - Fixed: Odd elseif error message showing wrong line
- - Fixed: Crashes with bad function calls: MsgBox(MsgBox(MsgBox))
- - Fixed: HotKey crashes when unregistering a key that was not registered
-
- - Fixed: (Internal) WinWaitDelay, SendKeyDelay, etc type commands now more accurate (previously only accurate to 10ms (NT) or 55ms (9x))
- - Fixed: (Internal) Execute() recursion limit dropped to 384 levels
- - FIxed: (Internal) Calls to Util_AttachThreadInput will not attach to hung windows
- - Fixed: (Internal) some RegRead/RegWrite sizing problems (Ta, Chris)
-
-
-
- 3.0.93 (12th Feb, 2004)
- - Added: SendAttachMode (AutoItSetOption)
- - Added: Opt() is an alias for AutoItSetOption() :)
- - Added: Doc updates
- - Added: WinSearchChildren (AutoItSetOption)
- - Changed: Splash and Progress functions have a "moveable" option
- - Changed: StringStripWS (new strip all ws mode)
- - Changed: InputBox (timeout param)
- - Changed: Hot keys are no longer buffered when the script is paused.
- - Fixed: REG_MULTI_SZ support
- - Fixed: TrayIconDebug not showing correct filename
- - Fixed: ControlClick, ControlCommand("CHECK")
- - Fixed: Control functions now using return values rather than @error where appropriate.
- - Fixed: Error with '' quotes in Aut2Exe
- - Fixed: StringFormat()
- - Fixed: Lexer checks that potential user function calls are for existing functions
- - Fixed: Input thread attachment in Send() ( check Send("{... down}") still works)
-
- - Changed: (Internal) Removed the only sscanf call and replaced with own code - saves 4KB.
-
-
-
- 3.0.92 (6th Feb, 2004)
-
- Note: Script breaking changes to ControlLeftClick(), FileFindFirstFile(), SendSetCapslockState()
-
- - Added: Dec()
- - Added: BitNOT(), BitXOR(), BitShift()
- - Added: TrayIconDebug (AutoItSetOption)
- - Added: Dim single-line initialization and multiple variables
- - Added WinTitleMatchMode 4 (AutoItSetOption)
- - Added: #comments-start and #comments-end for multiline comments
- - Added: DirCopy()
- - Added: DirMove()
- - Added: Controls will be checked by visible text as well as classname (waves to Chris :) )
- - Added: Macros: @USERPROFILEDIR, @HOMEDRIVE, @HOMEPATH, @HOMESHARE, @LOGONSERVER, @LOGONDOMAIN, @LOGONDNSDOMAIN
- - Removed: SendSetCapslockState() - Use Send("{CAPSLOCK on/off}")
- - Changed: FileFind works differently (handles used and multiple finds now supported)
- - Changed: ControlLeftClick() renamed to ControlClick() and options added.
- - Changed: Window Spy options added and ability to freeze display
- - Changed: StringSplit will return each char if delimiters are ""
- - Changed: WinMenuSelectItem return value
- - Changed: optional variation added to PixelSearch()
- - Changed: optional step value added to PixelSearch()
- - Changed: FileMove() overwrite flag added
- - Changed: *.* assumed if a directory is used in FileCopy/FileMove/FileDelete
- - Fixed: @TempDir under certain conditions
- - Fixed: Hotkeys were ignored while another hotkey function was running
-
- - Changed: (Internal) DirRemove changed
- - Changed: (Internal) Sendkeys tweaked A LOT
-
-
-
- 3.0.91 (29th Jan, 2004)
- - Added: Options: MouseClickDelay, MouseClickDownDelay, MouseClickDragDelay (AutoItSetOption)
- - Added: REG_BINARY type for RegRead() and RegWrite()
- - Added: FileChangeDir()
- - Added: ControlCommand() - added GETCURRENTSELECTION
- - Added: Added some standard library includes (See Program Files\AutoIt3\Include\)
- - Added: SendKeyDownDelay (AutoItSetOption) (alters the amount a time a key is held down before released)
- - Added: AutoIt returns an exit code of 1 if script could not be loaded
- - Added: FileSetAttrib(), FileSetTime()
- - Added: In Au3_Spy pixel colour is also shown in hex
- - Fixed: While loops failing when used in recursive functions of themselves... (!?)
- - Fixed: Small line coninuation _ bug
- - Fixed: URLDownloadToFile()
- - Fixed: FileRecycle() not always working
- - Fixed: FileRecycle() return value
- - Fixed: Relative #include use
- - Fixed: Smart boolean comparision re-added
- - Fixed: FileFindFirst() not releasing memory when called multiple times
- - Changed: FileGetTime outputs strings with leading 0s when required
- - Changed: Default value of Local/Global/Dim is the String "" (equates to 0 when used as a number)
-
- - Changed: (Internal) More scriptfile.cpp optimization
- - Changed: (Internal) Execute() recursion levels limited to 512 to prevent stack overflows
-
-
-
- 3.0.90 (20th Jan, 2004)
- - Fixed: Serious nested IF bug
-
- - Changed: (Internal) Rollback of variabletable.cpp and stacks/vectors
-
-
-
- 3.0.89 (19th Jan, 2004)
- - Added: Method for standard library functions and includes
- - Added: #include < > support (must be fully installed to work)
- - Added: #include-once directive (put at the top of a file to make sure it is only
- included once)
- - Added: @UserName and @TempDir macros
- - Fixed: Nasty fatal bug in 3.0.88
-
-
-
- 3.0.88 (18th Jan, 2004)
- - Added: ElseIf
- - Changed: All block structures (IF/WHILE/FOR, etc.) are now checked before execution.
- - Fixed: Some single hotkeys not working
- - Fixed: Better detection of illegal nesting, e.g.:
- if 1 = 1
- while 1
- endif
- wend
-
- - Changed: (Internal) lots of error checking code removed as a nice side effect of
- initial block structure checking
- - Changed: (Internal) windows string functions (lstrcmp etc) moved back to C versions
- due to massive performance penalty
-
-
-
- 3.0.87 (15th Jan, 2004)
- - Changed: Aut2Exe stores files it can't compress (.zip etc) rather than expanding
- - Fixed: Aut2Exe crashing if FileInstall used a file less than 4 bytes
- - Fixed: Aut2Exe crashing with uncompressable files
- - Fixed: RegRead not working correctly with large DWORD values
- - Fixed: NOT fixed when skipped during a boolean expression
-
- - Changed: (Internal) variable_table.cpp rewritten
- - Changed: (Internal) All stacks/vectors replaced with templated code
-
-
-
- 3.0.86 (12th Jan, 2004)
- - Added: Enhanced boolean comparisons
- - Added: Send can hold keys down, e.g. Send("{a down}") will hold the A key down (only works usefully with games)
- - Fixed: 0 ^ 0 = 1
- - Fixed: on_top parameter of ProgressOn()
- - Fixed: No longer hanging with blank search in StringReplace()
- - Fixed: Asc() giving -1 in some cases
- - Fixed: Tray icon's tip not updating when un-pausing
- - Changed: Single keys of 0-9, a-z can no longer be used as hotkeys if alt,ctrl or win is NOT also used.
-
- - Changed: (Internal) FPU assembler used for advanced math (sin,cos,pow, etc) functions due to
- exe size problems under VC7
-
-
-
- 3.0.85 (9th Jan, 2004)
- - Added: HotKeySet()
- - Added: Abs(), Sin(), Cos(), Tan(), ASin(), ACos(), ATan(), Sqrt(), Log(), Exp()
- - Added: ^ operator
- - Added: Round()
- - Added: Call()
- - Changed: IniWrite/IniDelete() return 0 if they fail
- - Changed: No longer need to use virtual keys for FileCreateShortcut()
- - Fixed: Return value for FileCopy/FileInstall()
- - Fixed: Incorrect use of ExitLoop/ContinueLoop trapped
-
- - Changed: (Internal) Send() tweaking
- - Fixed: (Internal) Function calling/scope slightly bugged (Adlib, Hotkey)
-
-
-
- 3.0.84 (30th Dec, 2003)
- - Added: New window WinTitleMatchMode of 3 (for exact title match)
- - Added: Some more details added to helpfile
- - Changed: The key # is no longer used as a delimiter but as a left Win key combination. So
- Send("#e") now presses the left win+e keys. I don't think anyone actually used
- it as a delimiter anyway - it was just a left over from v1 and it never made
- lines easier to read anyway
- - Changed: FileReadLine() and FileWriteLine() modified so that they optionally accept a filename
- instead of a filehandle for "quick 'n' dirty" file access - I'm sure this will be
- popular :)
-
-
-
- 3.0.83 (30th Dec, 2003)
- - Changed: Due to popular demand, by default functions now return 0 for error and 1 for success.
- This affects the following functions: FileWriteLine, CDTray, DriveSetLabel, DirCreate,
- DirRemove, FileCopy, FileMove, FileDelete, FileInstall, ClipPut, URLDownloadToFile,
- RunAsSet, Shutdown, RegWrite, RegDelete, WinWait, WinWaitActive, WinWaitClose, WinWaitNotActive,
- ProcessWait, ProcessWaitClose. If you were using the return values of one of
- these functions then please check your scripts.
-
- - Changed: ControlSend() supports {} (for most things at least...)
-
-
-
- 3.0.82 (29th Dec, 2003)
- - Added: Files installed with FileInstall() now have original timestamps (created/modified)
- - Added: IsNumber()
- - Fixed: Number to string conversions and general float parsing
-
- - Changed: (Internal) FileInstall() compression code updated
-
-
-
- 3.0.81
- - Fixed: Yet more bugs with single line IF - regretting adding this feature already...
- - Fixed: Bugs with NOT operator and the new variant code
- - Fixed: Bug with clicking CANCEL on the open script window (introduced in 3.0.80)
- - Fixed: StringIs... functions failing when using numbers as parameters
-
- - Fixed: (Internal) VectorVariant modified to allow reference access to variants (instead of copying everytime)
-
-
-
- 3.0.80 (15th Dec, 2003)
- - Changed: Number to String conversions tweaked
- - Fixed: Massive bug fixed with arrays introduced in 3.0.76
- - Fixed: Line continuation crash
-
- - Changed: (Internal) script reading code updated for Aut2Exe and merged with AutoIt
-
-
-
- 3.0.79 (15th Dec, 2003)
- - Added: Lines can be continued over many lines - use _ at the end of a line to continue it (as VBScript)
- - Added: Single line IF statements possible
- - Changed: Maximum line length (including total of combined lines) increased from 1023 to 4095 characters.
- - Changed: "Then" keyword in IF statements no longer optional (helps with single line IFs)
-
- e.g.
- MsgBox(0, "Test", "This is some text _
- And more text _
- And even more text")
-
-
-
- 3.0.78 (15th Dec, 2003)
- - Changed: Variants work differently - no longer a seperate INTEGER type
- - Changed: Float() changed to Number()
-
- All numbers now 15digit precision (internal C double type)
- Also affects Random() you will get floating point numbers back unless you use Int()
- with the result
-
-
-
- 3.0.77 (30th Nov, 2003)
- - Added: New option "TrayIconHide" (AutoItSetOption)
- - Changed: "AutoIt -" prefix removed from compiled a script's tray icon
- - Changed: Compiled script's file properties point to a custom web page
- - Fixed: Tray icon should redraw after an explorer crash
-
-
-
- 3.0.76 (30th Nov, 2003)
- - Fixed: Couple of bugs with ContinueLoop and ExitLoop
- - Fixed: Statements like $test[$test[0]] now working
-
-
-
- 3.0.75 (30th Nov, 2003)
- - Added: ControlGetFocus()
- - Added: Local and Global keywords
- - Changed: Dim (along with Local/Global) can now be used as in vbscript to declare variables
- - Changed: FileOpenDialog() uses "|" as the delimiter instead of ","
- - Fixed: PixelSearch()
- - Fixed: SoundPlay()...maybe
- - Fixed: Splash() sizing issues
-
-
-
- 3.0.74
- - Added: Hex notation for integer numbers ($var = 10 or $var = 0xa)
- - Added: MouseDown(), MouseUp()
- - Added: TrayTip()
- - Fixed: PixelCoordMode not working correctly
- - Fixed: Compiled exes not producing random numbers
-
-
-
- 3.0.73
- - Added: New option "RunErrorsFatal" (AutoItSetOption)
- - Added: New option "ExpandEnvStrings" (AutoItSetOption)
- - Changed: FileMove() moves/renames without affecting timestamps - can also be used
- for directories
- - Changed: RegRead/RegWrite() now supports REG_EXPAND_SZ
- - Changed: Extra options added to FileGetTime()
- - Changed: Extra 250ms delay added to start and end of mouse drags
- - Fixed: Odd error message fixed where a user function contained a badly formatted line
-
-
-
- 3.0.72
- - Fixed: Compiler was ignoring comments near FileInstall() functions
- - Fixed: Memory leak in StatusBarGetText()
- - Fixed: PixelGetColor
- - Added: New option "PixelCoordMode" (AutoItSetOption)
-
-
-
- 3.0.71
- Get ready for some script rewriting...*holds up banner with BETA written on it :) *
-
- - Added: ControlSend()
- - Added: Framework for AutoItSetOption() - note: this function replaces all
- functions like WinSetDelay, SendSetDelay, MouseSetMode, etc.
- - Removed: MouseSetMode(), SendSetCapslockMode(), SendSetDelay(), WinSetDelay(), WinSetDetectHiddenText()
- WinSetTitleMatchMode()
-
-
-
- 3.0.70
- - Fixed: SoundPlay()
- - Removed: AutoItWinShow(), AutoItWinWrite(), AutoItWinGetText()
- - Changed: ControlCommand() (updated with Larry's recent changes)
- - Changed: RegRead() extended error codes
- - Added: FileFindFirstFile(), FileFindNextFile()
- - Added: AutoItWinGetTitle()
- - Added: WinGetClientSize()
- - Added: EnvUpdate()
- - Added: SoundSetWaveVolume()
- - Added: FileGetLongName(), FileGetShortName()
- - Added: TimerStart(), TimerStop()
-
-
-
- 3.0.69
- - Fixed: Small delay added into mouseclick functions
- - Fixed: FileGetVersion()
- - Fixed: WinMenuSelectItem()
- - Fixed: StringSplit() buffer overrun
-
-
-
- 3.0.68
- - Added: FileGetAttrib(), WinMenuSelectItem(), FileGetVersion()
- - Added: Added options to ControlCommand()
-
- - Changed: (Internal) Larry's nFlag functions split
-
-
-
- 3.0.67
- - Changed: InputBox() narrowed slightly
- - Fixed: AutoIt icon not refreshing if Return was used at top level of script
- - Fixed: Crash with extra long lines fixed
- - Fixed: @OS_VERSION weirdness fixed
-
- - Changed: (Internal) MessagePump handled differently and recursion level of Execute() tracked
-
-
-
- 3.0.66
- - Changed: StringSplit() returns full string in array if no delimiters matched (and count=1 not 0)
- - Fixed: Crash related to window titles and text fixed.
-
-
- 3.0.65
- - Added: ControlCommand() option GetCurrentLine
- - Fixed: Possible bug with optional "Then" statement fixed
- - (Internal) Window searching functions altered to check for hung windows
-
-
-
- 3.0.64
- Fixed: IniWrite/Delete() functions were not flushing immediately under 9x.
- Added: Errors now include the file name that contained the error
-
-
-
- 3.0.63
- - Changed: ControlCommand() various internal changes.
- - Fixed: MsgBox() character limit bug fixed
- - Changed: Can now specify a custom time for AdlibEnable()
-
-
-
- 3.0.62
- - Fixed: Aut2Exe icon changing code bugged
- - Changed: Timing of "paused" flash and icon modified a little.
-
-
-
- 3.0.61
- - Fixed: FileOpenDialog()
- - Changed: (Internal)Encryption code modified - check compiling thoroughly
- - Added: AutoIt icon flashes when in paused state
-
-
-
- 3.0.60
- - Changed: Aut2Exe strips version info from compiled script. (Hoping to be custom versioninfo in future)
- - Fixed: FileGetSize() (change made, unsure if problem fixed)
- - Fixed: FileMove wasn't supported on 9x (9x has no MoveFileEx function, Dave... :) )
-
-
-
- 3.0.59
- - Fixed: InputBox was not returning "" on cancel
-
-
-
- 3.0.58
- - Fixed: The window text searching in AutoIt was not the same as AU3_Spy or WinGetText()
- - Added: InputBox() (and very nice it is too...)
- - Added: FileMove()
-
-
-
- 3.0.57
- - Fixed: MsgBox under 9x was doing odd things with timeouts - tried something else.
-
-
-
- 3.0.56
- - Fixed: Selecting the default icon in Aut2Exe was not saved between sessions
- - Fixed: @OSLang under NT4...
- - Added: SysTabControl32 tabbing
-
-
-
- 3.0.55
- - Changed: Better icon support added to Aut2Exe
- - Changed: (Internal) upx.exe called during the compiler to compress data -
- necessary to do it this way as you can't edit the resources of a compressed
- exe
- - Changed: SoundPlay()
-
-
-
- 3.0.54
- - Fixed: Compiled scripts with custom icons were failing
- - Fixed: @OS_LANG under 9x
-
-
-
- 3.0.53
- - Added: StringSplit()
-
-
-
- 3.0.52
- - Changed: SoundPlay() option to wait added
- - Added: ChangeIcon support back in Aut2Exe (32x32x16) - Slightly better than v2 in that
- a multiimage iconfile can be used - although only the 32x32x16 image is actually used.
-
-
-
- 3.0.51
- - Fixed: Aut2Exe still used ' comments when including files -whoops.
-
-
-
- 3.0.50
- - Changed: (Internal)A little error checking added to the lexer
- - Added: @TAB, @COMSPEC
- - Changed: MouseClick() parameters changed
- - Added: MouseClickDrag()
-
-
-
- 3.0.49
- - Fixed: Statusbar in Aut2Exe with Visual Styles
- - Changed: Single line comment character is now ;
- - Changed: ' and " may now be used for strings
-
-
-
- 3.0.48
- - Added: StringIsFloat(), StringIsInt()
- - Fixed: MsgBox() wasn't returning -1 on timeout
- - Fixed: StringReplace() error if string to replace was at end of string
- - Changed: StringReplace() count is now optional (assumes global)
- - Added: Aut2Exe and AutoIt3 now use Visual Styles
-
-
-
- 3.0.47
- - Changed: FileExists() to work with wildcards
- - Changed: Extra options added to AutoItWinShow()
- - Changed: RegRead returns the string "" in addition to @error if the (default) key was requested
- and not found.
- - Fixed: DriveGetDrive() (still an a: drive bug to find though)
-
-
-
- 3.0.46
- - Fixed: RegDelete() return value when value does not exist
- - Fixed: CDTray() open/closed problems
- - Fixed: FileSelectFolder() crash due to missing initialisers
-
-
-
- 3.0.45
- - Changed: Set...() functions renamed (SendSetDelay, WinSetDelay, etc.)
- - Added: StatusbarGetText()
-
-
-
- 3.0.44
- - Added: Break()
- - Fixed: DriveStatus()
- - Fixed: RegDelete()
-
-
-
- 3.0.43
- - Fixed: @OSLang for 2000+
- - Added: Hex(), AutoItWinGetText()
- - Changed: UBound() back to how it was again (same as VBScript syntax)
-
-
-
- 3.0.42 (30th Aug, 2003)
- - Tweaked: Mouse coords were 1 pixel out
- - Added: MouseSetMode() to allow for screen _and_ relative coords - yay everyone's happy
-
-
-
- 3.0.41 (30th Aug, 2003)
- - Fixed: Bug with invalid filehandles (again!).
- - Changed: Mouse commands may now work on multiple monitors.
- - Fixed: $CmdLine wasn't working correctly for compiled scripts.
- - Fixed: The operator == wasn't properly comparing strings
- - Fixed: INI functions, filename now doesn't need ".\file.ini" to work in the current directory
- - Fixed: Bug in Run() directory would not be set if last parameter was used
-
-
-
- 3.0.40
- - Added: Windows API error messages added onto errors for the Run() commands
- (directory invalid, bad logon, etc).
-
-
-
- 3.0.39 (29th Aug, 2003)
- - Added: RunAsSet() (2000/XP only)
- - Added: FileRecycle()
-
-
-
- 3.0.38 (28th Aug, 2003)
- - Changed: WinGetText now correctly takes note of detecthiddentext setting
- - Added: StringStripWS()
- - Added: DriveGetLabel(), DriveGetSerial(), DriveGetFileSystem(),
- DriveSetLabel(), DriveGetType(), MouseGetCursor()
-
-
-
- 3.0.37
- - Changed: Compression tweaked in Aut2Exe
-
- - Changed: UBound($array) now returns number of dimensions
- - Renamed all the IsUpper/IsAlpha, etc functions to StringIsUpper/StringIsAlpha, etc.
- - Added: IsFloat(), IsArray(), IsInt(), IsString()
- - Added: Mod()
-
-
-
- 3.0.36
- - Fixed: Main dialog in Aut2Exe
- - Added: New compression code (slower but better at higher levels)
-
-
-
- 3.0.35
- - Added: FileInstall() support
- - Added: SplashImageOn(), SplashTestOn(), SplashOff()
- - Added: ProgressOn(), ProgressOff(), ProgressSet()
- - Added: Compression level option in Aut2Exe
-
-
-
- 3.0.34
- - Fixed: subscript must be > 0 in Dim statement
- - Added: Compiled script reading code added
- - Added: @Compiled
- - Added: Aut2Exe
-
-
-
- 3.0.33 (22nd Aug, 2003)
- - Added: Case Else
- - Added: @DesktopWidth, @DesktopHeight
- - Fixed: CDTray - closed/close
- - Fixed: Incorrect reference passing of global variables
- - Fixed: Bad file handle causing a crash in FileWrite/Read/Close
- - Fixed: Crash with badly formatted Func statements
- - Parsing speeded up (doubled the speed)
- - Optimized string handling in variants
-
-
- 3.0.32 (20th Aug, 2003)
- - Started proper version logging :)
-
-
- First public beta binary - 4th Mar, 2003.
-
- Development started - 20th Jan, 2003.
-